import {
  OpenAI,
  Azure,
  AzureAI,
  Anthropic,
  Google,
  Bedrock,
  DeepSeek,
  Groq,
  GitHub,
  Minimax,
  Mistral,
  Moonshot,
  Ollama,
  Perplexity,
  OpenRouter,
  ZeroOne,
  TogetherAI,
  Qiniu,
  Qwen,
  Stepfun,
  Spark,
  FireworksAI,
  Baichuan,
  Taichu,
  Ai360,
  SiliconCloud,
  Upstage,
  Ai21,
  Doubao,
  Hunyuan,
  Nvidia,
  TencentCloud,
  Wenxin,
  SenseNova,
  HuggingFace,
  LmStudio,
  XAI,
  Cloudflare,
  InternLM,
  Higress,
  VLLM,
  GiteeAI,
  ModelScope,
  VertexAI,
  PPIO,
  Jina,
  Volcengine,
  SambaNova,
  Cohere,
  Search1API,
  InfiniAI,
  Xinference,
  Novita,
  Zhipu,
} from './ProviderIcons';
import { ProviderMapping } from './types';

export const providerMappings: ProviderMapping[] = [
  { Icon: Zhipu, keywords: ['zhipu'], combineMultiple: 1.25 },
  { Icon: Bedrock, keywords: ['bedrock'], combineMultiple: 1.1 },
  { Icon: DeepSeek, keywords: ['deepseek'], combineMultiple: 1.16 },
  { Icon: Google, keywords: ['google'], combineMultiple: 0.92 },
  { Icon: Azure, keywords: ['azure'] },
  { Icon: Moonshot, keywords: ['moonshot'], combineMultiple: 0.9 },
  { Icon: Novita, keywords: ['novita'] },
  { Icon: OpenAI, keywords: ['openai'] },
  { Icon: Ollama, keywords: ['ollama'], combineMultiple: 1.16 },
  { Icon: Perplexity, keywords: ['perplexity'] },
  { Icon: Minimax, keywords: ['minimax'], combineMultiple: 1.3 },
  { Icon: Mistral, keywords: ['mistral'], combineMultiple: 1.08 },
  { Icon: Anthropic, keywords: ['anthropic'], combineMultiple: 0.83 },
  { Icon: Groq, keywords: ['groq'] },
  { Icon: OpenRouter, keywords: ['openrouter'], combineMultiple: 0.8 },
  { Icon: ZeroOne, keywords: ['zeroone'], combineMultiple: 0.9 },
  { Icon: TogetherAI, keywords: ['togetherai'] },
  { Icon: Qiniu, keywords: ['qiniu'], combineMultiple: 1.1 },
  { Icon: Qwen, keywords: ['qwen'], combineMultiple: 1.1 },
  { Icon: Stepfun, keywords: ['stepfun'], combineMultiple: 0.83 },
  { Icon: Spark, keywords: ['spark'], combineMultiple: 0.92 },
  { Icon: FireworksAI, keywords: ['fireworksai'], combineMultiple: 1.14 },
  { Icon: Baichuan, keywords: ['baichuan'], combineMultiple: 0.83 },
  { Icon: Taichu, keywords: ['taichu'], combineMultiple: 1.16 },
  { Icon: Ai360, keywords: ['ai360'], combineMultiple: 0.83 },
  { Icon: SiliconCloud, keywords: ['siliconcloud'], combineMultiple: 0.75 },
  { Icon: Upstage, keywords: ['upstage'], combineMultiple: 0.9 },
  { Icon: Ai21, keywords: ['ai21'], combineMultiple: 0.9 },
  { Icon: GitHub, keywords: ['github'], combineMultiple: 0.95 },
  { Icon: Doubao, keywords: ['doubao'] },
  { Icon: Hunyuan, keywords: ['hunyuan'] },
  { Icon: Nvidia, keywords: ['nvidia'] },
  { Icon: TencentCloud, keywords: ['tencentcloud', 'tencentclound'] },
  { Icon: Wenxin, keywords: ['wenxin'] },
  { Icon: SenseNova, keywords: ['sensenova'], combineMultiple: 0.95 },
  { Icon: HuggingFace, keywords: ['huggingface'], combineMultiple: 1.16 },
  { Icon: LmStudio, keywords: ['lmstudio'] },
  { Icon: XAI, keywords: ['xai'], combineMultiple: 0.85 },
  { Icon: Cloudflare, keywords: ['cloudflare'], combineMultiple: 1.1 },
  { Icon: InternLM, keywords: ['internlm'], combineMultiple: 0.95 },
  { Icon: Higress, keywords: ['higress'] },
  { Icon: VLLM, keywords: ['vllm'], combineMultiple: 0.85 },
  { Icon: GiteeAI, keywords: ['giteeai'], combineMultiple: 0.95 },
  { Icon: ModelScope, keywords: ['modelscope'], combineMultiple: 1.2 },
  { Icon: VertexAI, keywords: ['vertexai'] },
  { Icon: PPIO, keywords: ['ppio'], combineMultiple: 0.85 },
  { Icon: Jina, keywords: ['jina'] },
  { Icon: AzureAI, keywords: ['azureai'] },
  { Icon: Volcengine, keywords: ['volcengine'] },
  { Icon: SambaNova, keywords: ['sambanova'], combineMultiple: 0.8 },
  { Icon: Cohere, keywords: ['cohere'] },
  { Icon: Search1API, keywords: ['search1api'], combineMultiple: 0.9 },
  { Icon: InfiniAI, keywords: ['infiniai', 'infiniAI'], combineMultiple: 0.8 },
  { Icon: Xinference, keywords: ['xinference'], combineMultiple: 0.85 },
];